package com.top10.entity.vo;

import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.enums.IdType;
import com.top10.entity.OrderDetailed;
import org.hibernate.validator.constraints.NotEmpty;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @author sny
 * @Package com.top10.entity.vo
 * @date 2018/10/8
 */
public class OrderCreateVo {


    private String uuid;
    /**
     * 订单流水号
     */
    private String orderid;
    /**
     * 支付id
     */
    private String payid;
    /**
     * 支付宝交易号
     */
    @TableField("trade_no")
    private String tradeNo;
    /**
     * 退款批次
     */
    @TableField("batch_no")
    private String batchNo;
    /**
     * 商店uuid
     */
    @TableField("shop_uuid")
    private String shopUuid;
    /**
     * 用户uuid
     */
    @TableField("user_uuid")
    private String userUuid;
    /**
     * 收货人uuid
     */
    @TableField("consignee_uuid")
    private String consigneeUuid;
    /**
     * 快递uuid
     */
    @TableField("express_uuid")
    private String expressUuid;
    /**
     * 快递费用
     */
    @TableField("express_price")
    private Double expressPrice;
    /**
     * 快递单号
     */
    @TableField("express_number")
    private String expressNumber;
    /**
     * 商品价格
     */
    @TableField("aggregate_amount")
    private Double aggregateAmount;
    /**
     * 实际支付金额，积分+卡劵+现金
     */
    @TableField("actual_price")
    private Double actualPrice;
    /**
     * 订单商品总数量
     */
    @TableField("s_quantity")
    private Integer sQuantity;
    /**
     * 消耗积分，100：1
     */
    private Integer integral;
    /**
     * 消耗卡劵uuid
     */
    @TableField("card_coupons_uuid")
    private String card_coupons_uuid;
    /**
     * 配送商uuid
     */
    @TableField("delivery_uuid")
    private String deliveryUuid;
    /**
     * 封条uuid
     */
    @TableField("bar_code_uuid")
    private String barCodeUuid;
    /**
     * 订单状态，0：待支付，1：待发货，2：已发货，3：已配送，4：已签收，5:申请退款,6:同意退款,7:拒绝退款-1：已取消
     */
    private Integer status;
    /**
     * 记录之前的订单状态
     */
    @TableField("old_status")
    private Integer oldStatus;
    /**
     * 是否已经支付给商家
     */
    @TableField("pay_seller_status")
    private Boolean paySellerStatus;
    /**
     * 支付给商家的异步通知id
     */
    @TableField("pay_seller_notify_id")
    private String paySellerNotifyId;
    /**
     * 支付给商家的批次号
     */
    @TableField("pay_seller_batch_no")
    private String paySellerBatchNo;
    /**
     * 订单类型：1：正常订单，2：折扣空间订单
     */
    @TableField("order_type")
    private Integer orderType;
    private String province;
    /**
     * 支付方式，0：支付宝，1：线下，2：微信
     */
    private Integer paytype;
    /**
     * 确认收货时间
     */
    private Date confirmtime;
    /**
     * 付款时间
     */
    private Date paytime;
    private Date refundtime;
    /**
     * 是否删除
     */
    private Boolean isdeleted;
    /**
     * 创建时间
     */
    private Date createtime;
    /**
     * 创建者
     */
    private String creator;
    /**
     * 更新时间
     */
    private Date updatetime;
    /**
     * 修改者
     */
    private String mender;
    private Integer walletpaytype;
    private BigDecimal pointpay;
    private BigDecimal walletpay;
    private BigDecimal rate;


    private List<OrderCreateDetailedVo> OrderDetailCreateVo;


    public String getUuid() {
        return uuid;
    }

    public void setUuid(String uuid) {
        this.uuid = uuid;
    }

    public String getOrderid() {
        return orderid;
    }

    public void setOrderid(String orderid) {
        this.orderid = orderid;
    }

    public String getPayid() {
        return payid;
    }

    public void setPayid(String payid) {
        this.payid = payid;
    }

    public String getTradeNo() {
        return tradeNo;
    }

    public void setTradeNo(String tradeNo) {
        this.tradeNo = tradeNo;
    }

    public String getBatchNo() {
        return batchNo;
    }

    public void setBatchNo(String batchNo) {
        this.batchNo = batchNo;
    }

    public String getShopUuid() {
        return shopUuid;
    }

    public void setShopUuid(String shopUuid) {
        this.shopUuid = shopUuid;
    }

    public String getUserUuid() {
        return userUuid;
    }

    public void setUserUuid(String userUuid) {
        this.userUuid = userUuid;
    }

    public String getConsigneeUuid() {
        return consigneeUuid;
    }

    public void setConsigneeUuid(String consigneeUuid) {
        this.consigneeUuid = consigneeUuid;
    }

    public String getExpressUuid() {
        return expressUuid;
    }

    public void setExpressUuid(String expressUuid) {
        this.expressUuid = expressUuid;
    }

    public Double getExpressPrice() {
        return expressPrice;
    }

    public void setExpressPrice(Double expressPrice) {
        this.expressPrice = expressPrice;
    }

    public String getExpressNumber() {
        return expressNumber;
    }

    public void setExpressNumber(String expressNumber) {
        this.expressNumber = expressNumber;
    }

    public Double getAggregateAmount() {
        return aggregateAmount;
    }

    public void setAggregateAmount(Double aggregateAmount) {
        this.aggregateAmount = aggregateAmount;
    }

    public Double getActualPrice() {
        return actualPrice;
    }

    public void setActualPrice(Double actualPrice) {
        this.actualPrice = actualPrice;
    }

    public Integer getsQuantity() {
        return sQuantity;
    }

    public void setsQuantity(Integer sQuantity) {
        this.sQuantity = sQuantity;
    }

    public Integer getIntegral() {
        return integral;
    }

    public void setIntegral(Integer integral) {
        this.integral = integral;
    }

    public String getCard_coupons_uuid() {
        return card_coupons_uuid;
    }

    public void setCard_coupons_uuid(String card_coupons_uuid) {
        this.card_coupons_uuid = card_coupons_uuid;
    }

    public String getDeliveryUuid() {
        return deliveryUuid;
    }

    public void setDeliveryUuid(String deliveryUuid) {
        this.deliveryUuid = deliveryUuid;
    }

    public String getBarCodeUuid() {
        return barCodeUuid;
    }

    public void setBarCodeUuid(String barCodeUuid) {
        this.barCodeUuid = barCodeUuid;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public Integer getOldStatus() {
        return oldStatus;
    }

    public void setOldStatus(Integer oldStatus) {
        this.oldStatus = oldStatus;
    }

    public Boolean getPaySellerStatus() {
        return paySellerStatus;
    }

    public void setPaySellerStatus(Boolean paySellerStatus) {
        this.paySellerStatus = paySellerStatus;
    }

    public String getPaySellerNotifyId() {
        return paySellerNotifyId;
    }

    public void setPaySellerNotifyId(String paySellerNotifyId) {
        this.paySellerNotifyId = paySellerNotifyId;
    }

    public String getPaySellerBatchNo() {
        return paySellerBatchNo;
    }

    public void setPaySellerBatchNo(String paySellerBatchNo) {
        this.paySellerBatchNo = paySellerBatchNo;
    }

    public Integer getOrderType() {
        return orderType;
    }

    public void setOrderType(Integer orderType) {
        this.orderType = orderType;
    }

    public String getProvince() {
        return province;
    }

    public void setProvince(String province) {
        this.province = province;
    }

    public Integer getPaytype() {
        return paytype;
    }

    public void setPaytype(Integer paytype) {
        this.paytype = paytype;
    }

    public Date getConfirmtime() {
        return confirmtime;
    }

    public void setConfirmtime(Date confirmtime) {
        this.confirmtime = confirmtime;
    }

    public Date getPaytime() {
        return paytime;
    }

    public void setPaytime(Date paytime) {
        this.paytime = paytime;
    }

    public Date getRefundtime() {
        return refundtime;
    }

    public void setRefundtime(Date refundtime) {
        this.refundtime = refundtime;
    }

    public Boolean getIsdeleted() {
        return isdeleted;
    }

    public void setIsdeleted(Boolean isdeleted) {
        this.isdeleted = isdeleted;
    }

    public Date getCreatetime() {
        return createtime;
    }

    public void setCreatetime(Date createtime) {
        this.createtime = createtime;
    }

    public String getCreator() {
        return creator;
    }

    public void setCreator(String creator) {
        this.creator = creator;
    }

    public Date getUpdatetime() {
        return updatetime;
    }

    public void setUpdatetime(Date updatetime) {
        this.updatetime = updatetime;
    }

    public String getMender() {
        return mender;
    }

    public void setMender(String mender) {
        this.mender = mender;
    }

    public Integer getWalletpaytype() {
        return walletpaytype;
    }

    public void setWalletpaytype(Integer walletpaytype) {
        this.walletpaytype = walletpaytype;
    }

    public BigDecimal getPointpay() {
        return pointpay;
    }

    public void setPointpay(BigDecimal pointpay) {
        this.pointpay = pointpay;
    }

    public BigDecimal getWalletpay() {
        return walletpay;
    }

    public void setWalletpay(BigDecimal walletpay) {
        this.walletpay = walletpay;
    }

    public BigDecimal getRate() {
        return rate;
    }

    public void setRate(BigDecimal rate) {
        this.rate = rate;
    }

    public List<OrderCreateDetailedVo> getOrderDetailCreateVo() {
        return OrderDetailCreateVo;
    }

    public void setOrderDetailCreateVo(List<OrderCreateDetailedVo> orderDetailCreateVo) {
        OrderDetailCreateVo = orderDetailCreateVo;
    }
}